Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

460
Views
Errores inexplicables de Node JS "Cannot POST/GET"

Tengo un NodeJS SPA con un comportamiento extraño y para eso DEBO usar "fuerza bruta" para hacer que express.static() funcione:

 app.use('*/images', express.static(path.join(__dirname + '/public/images')));

Ahora estoy enfrentando un problema en otra URL que debo hacer un pedido POST:

(Imagen de Google Chrome)

En el punto rojo: Error al cargar el recurso: el servidor respondió con un estado de 404 ()

Ese es el archivo server.js:

 // Load Node modules var express = require('express'); const bodyParser = require('body-parser'); const path = require('path'); const ejs = require('ejs'); var falaUser = require('./routes/falaUser'); (...) // Render static files app.use(bodyParser.json()); app.use('*/images', express.static(path.join(__dirname + '/public/images'))); app.use('*/js', express.static(path.join(__dirname + '/public/js'))); app.use('*/css', express.static(path.join(__dirname + '/public/css'))); app.use('*/slick-1.8.1', express.static(path.join(__dirname + '/public/slick-1.8.1'))); app.use('*/falauser', falaUser); (...) // Root Route app.get('/strapiClient/', function (req, res) { res.render('pages/index'); });

Ese es el archivo de ruta falaUser.js:

 const express = require('express'); const router = express.Router(); const axios = require('axios'); var config = require("config"); router.post('/strapiClient', function (req, res, next) { console.log(req.body); axios .post(config.get("botUrl"), req.body ) .then((dataBot) => { console.log(dataBot.data.responses); res.json({ "responses": dataBot.data.responses }); }) .catch((error) => { console.error(error); res.status(500).json(error); }) });

El resultado de .catch(error) es SyntaxError: token inesperado < en JSON en la posición 0

Para asegurarme de que el problema se debe al enrutamiento, probé con una solicitud GET, poniendo este código en falaUser.js:

 router.get('/strapiClient', function (req, res) { res.json({ fruta: 'lichia' }); });

Y tuve el error "Cannot GET /strapiClient/falauser"...

¿Alguna pista sobre cómo profundizar en él?

La página está aquí , si quieres echarle un vistazo: ve al final de la página y escribe "opa" en el área del chatbot.

about 4 years ago · Juan Pablo Isaza
1 answers
Answer question

0

app.use("/path1", router.post("/path2", ...))

solo coincide con las POST /path1/path2 . En su caso, path2 = "strapiClient" , por lo tanto, la URL POST debe terminar con /strapiClient y POST /strapiClient/falauser no coincide.

Consulte la siguiente oración en la documentación del Router :

La ruta de "montaje" se elimina y no es visible para la función de middleware. El principal efecto de esta característica es que una función de middleware montada puede operar sin cambios de código, independientemente de su nombre de ruta de "prefijo".

about 4 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!